The go team released 1.9.2 which includes fixes for some things
that 1.9.1 broke:
> ... include fixes to the compiler, linker, runtime, documentation, go command, and the crypto/x509, database/sql, log, and net/smtp packages. They include a fix to a bug introduced in Go 1.9.1 and Go 1.8.4 that broke "go get" of non-Git repositories under certain conditions.
* Exodus: skip the -G "Unix Makefiles" part
The problem is that spack passes -G "Unix Makefiles" into cmake, which normally
works. But in the Exodus package, it is being passed into a bash wrapper
script. In there, the $@ then loses the information about "Unix Makefiles"
being just one argument, and in effect passes -G Unix Makefiles into the cmake
(without quotes), and so cmake only sees -G Unix, and then fails. This is a
known problem with bash with no simple solutions. As a workaround, this patch
skips the first two arguments, i.e., -G and "Unix Makefiles". This makes it
work.
Fixes#5895.
* Port exodusii to cmake
The cmake options were taken from the cmake-exodus bash script and ported to
spack directly.
* Use variant forwarding to forward the 'mpi'
Now instead of
spack install exodusii~mpi^netcdf~mpi^hdf5~mpi
one can just use
spack install exodusii~mpi
* sw4lite: fix build errors and add variants
* sw4lite: change linking against blas and lapack
* change order of blas and lapack
* satisfy flake8 requirements
* Update package.py
* Add the custom paraview lib directory structure to the library paths in the paraview module file.
* Fixing flake8 issues.
* Checking if lib64 exists for paraview module file generation, else use lib.
* Fixing more flake8 problems I introduced.
Since LLVM 3.9 Clang can use the libc++ library by default using the
CLANG_DEFAULT_CXX_STDLIB cmake configuration variable, without having to
specify the -stdlib=libc++ option on the clang++ command line.
This commit makes clang++ use libc++ by default for LLVM 3.9 and later if the
libcxx variant is on.
Fixes#5942.
Chasing a performance regression has lead me to this change, going from default optimization gives a significant performance win. The sweet spot for zlib is apparently `-O2`, both `-Ofast` and `-O3` are slightly worse (regression is about 3% compared with `-O2) in my testing.
Happy to share my methodology with people so we can benchmark on a wider variety of systems.
* Add package for scalpel@0.5.3
Scalpel's a bit of a mess, it expects it's users to just unpack the
tarball, build it in the resulting directory and install that
directory onto their PATH. My install step recapitulates this into
prefix.bin. The alternative was rewiring their scripts (perl), which
use `FindBin` and expect things to be located in the same dir that the
script itself is.
Sigh.
Lightly tested on CentOS 7.
* Flake8 cleanup
* Additional flake8 cleanup
* Added procedure to edit sbangs of the parallel perl scripts.
* Specify the types of perl dependency
Adding ", type=('build', 'run')" to the dependency declaration to clarify when and how perl is required
* flake8 cleanup
The problem was that the configure script was not using spack's compiler
wrappers. We now pass the proper compiler wrapper using the CC argument
explicitly.
Fixes#5892.
* r-a4: Add r dependency and update url.
* r-a4base: Add r dependency and update url.
* r-a4classif: update url and add r dependency.
* r-a4core: Update url and add r dependency.
* r-a4preproc: Update url and add r dependency.
* r-a4reporting: Update url and add r dependency.
* r-abaenrichment: Update url and add r dependency.
* r-absseq: Update url and add r dependency.
* r-acgh: Update url and add r dependency.
* r-acme: Update url and add r dependency.
* r-adsplit: Update url and add r dependency.
* r-affxparser: Update url and add r dependency.
* r-affycomp: Update url and add r dependency.
* r-affycompatible: Update url and add r dependency.
* r-affycontam: Update url and add r dependency.
* r-annaffy: Update url and add r dependency.
* r-annotate: Update url and add r dependency.
* r-annotate: Update url and add r dependency.
* r-annotationdbi: Update url and add r dependency.
* r-genefilter: Update url and add r dependency.
* r-mlinterfaces: Update url and add r dependency.
* r-limma: Update url and add r dependency.
* r-multtest: Update url and add r dependency.
* r-a4classif: Correct format.
* r-affycomp: Correct error.
- When you don't use wildcards, flake8 will find places where you used an
undefined name.
- This commit has all the bugfixes resulting from this static check.
Jansson builds only a static library by default, which is probably
not what most users want. Add Cmake args required to build a shared
library and enable those via a default 'shared' variant of the
package.
* new package: hpgmg
* removed build and changed extend() to append()
* changes based on comments
* pep8 compliant
* addressed rest of comments
* trigger checks
* changed from fe_fv to two boolean variants
* fixed compilation issues
* cleared up ambiguities in solver variants
* removed +mpi condition
* changes based on review
#5776 cleaned up the way the the current working directory is
managed (less magic state).
bcl2fastq is packaged like a russian doll, rather than an archive file
that contains the source, there's a zip file that contains a tar.gz
file that contains the source. The package definition has a bit of
extra code that unpacks the inner tarball.
That extra bit of code now needs to explicitly arrange to be in the
correct directory before it does its work.
* py-mpi4py: Add develop version and dependencies
- Add cython dependency for develop version
- Add explicit python dependency
* py-mpi4py: Specify 2.0.1 instead of develop for conditional dep
Perl installs a couple of config files that need to be munged so that
they don't refer to the spack compiler. These files are installed
read-only. Behind the scenes 'filter_file' moves its file to a safe
place, and tries to create a working file that is both O_WRONLY and
has the perms of the original file. On an NFSv4 filesystem, the
combination of 'r--r--r--' and O_WRONLY throws a permissions error.
This commit adds a simple context manager that temporarily makes the
files writable.
* Add a new +clanglibcpp option for Boost
Currently, the compile of boost with clang will use the stdlibc++. This patch adds an optional flag to use clangs included libc++ instead.
* Linting
Fix long lines and white space errors
- Tests use a session-scoped mock stage directory so as not to interfere
with the real install.
- Every test is forced to clean up after itself with an additional check.
We now automatically assert that no new files have been added to
`spack.stage_path` during each test.
- This means that tests that fail installs now need to clean up their
stages, but in all other cases the check is useful.
1.64 had issues serialization (make_array and others) when built with
+mpi+python. It appears that those issues are fixed in 1.65.1
so we can remove preferred tag from 1.63.