Age | Commit message (Collapse) | Author | Files | Lines |
|
* travis : unit tests will run with and without libyaml
* travis : fixed package that are installed
|
|
* Workaround for illegal package merging in py-matplotlib/py-basemap
# Conflicts:
# var/spack/repos/builtin/packages/py-basemap/package.py
* flake8
* flake8
* Be conservative: only apply the namespace package fix for Python >= 3.5.2
* flake8
* Bug fix
|
|
|
|
* py-macs2: New package
* py-macs2: add py-numpy@1.6: dependency
|
|
|
|
|
|
* Major updates to Contribution Guide
* Grammar changes
* Fix missing/extra backticks
* Rewording, links, and tips added
|
|
* petsc: add 3.7.4
* slepc: add 3.7.3
|
|
|
|
|
|
* Made optional CGAL dependencies optional.
* cgal: Added note explaining that the CORE library is not the same as core CGAL functionality.
* Bug fix and flake8
* flake8
|
|
* build_environment: allow compilers to set up an environment
* clang: mock up a toolchain directory for xcode
Some projects ignore CC and CXX flags and instead use xcode to find the
toolchain. Clang on Apple should set up the environment properly.
Arguably, every compiler could do this on Apple, but let's see how this
works out just for AppleClang for now.
The Documentation directory is ~1.7G and the excluded platforms add up
to about 7G. Ignoring swift saves another 500M. The resulting Xcode.app
copy is in the 2G range.
* compiler: set member variables early
This is required so that later methods can query things such as the
version of the compiler.
* compiler: support finding the real path of the compiler
On Apple, the /usr/bin compilers are actually wrapping tools themselves
which query xcrun for the currently selected Xcode installation. Pierce
this veil and get the real, full path the to underlying compilers
instead.
* icu4c: install with rpath
On macOS, icu installs with a library ID of the library name. Enabling
rpath makes its ID its full installed path which lets Qt5 link against
it successfully.
* qt: no -no-gtkstyle flag on Qt5 on macOS
|
|
* spack list : updated documentation
* spack list : removed space before ':'
|
|
This PR add documentation for the `suffixes` and `hash_length` options
for modules.yaml.
This resolves #1416.
|
|
|
|
* patchelf: Add version
* flake8
* Removed unnecessary url_for_version() function.
* Restored old URL
|
|
|
|
sourced (#1626)
|
|
* First version of Abinit package
* Ignore *.swp files
* Add libxc, etsf_io packages
* AtomPaw package
* Make Abinit depend on mpi@2: and external version of libxc, netcdf, hdf5, etsf_io
* etsf_io: install Fortran modules in prefix.include
* Remove etsf_io from abinit requirements
* Add libxc2.2.1 (required by Abinit and atompaw)
* Cleanup
* Run make check
* Cleanup
* Use ld_flags instead of hard-coded libs, fix pep8, add copyright
* Put scalapack before lapackblas
|
|
* Added support for the 'maxdims' and 'maxvars' flags for 'NetCDF'.
* Added the '+mpi' variant and improved dependencies for 'exodusii'.
Improved the 'exodusii' package so that it's less reliant on patches.
* Added better type checking to variant values in the 'netcdf' package.
* Corrected the required CMake version for the 'exodusii' package.
* Fixed the dependencies of the '+mpi' variant of the 'exodusii' package.
|
|
* Updates to Mesa and other Xorg packages
* Add packages for all Xorg Protocol extensions
* Add packages for first half of Xorg libraries
* Add packages for remaining Xorg libraries
* Add packages for all Xorg utilities
* Add packages for Xorg documentation tools
* Add build deps to Xorg protocol headers
* Add packages for XCB
* Add build deps to Xorg libraries
* Add build deps to Xorg utilities
* Add packages for Xorg fonts and font-related utilities
* Change font deptype from build to default
I wasn't sure which deptype was appropriate at first since none of
the packages are actually linked together. I initially chose the
build deptype for this reason. However, the font packages don't
install into their own prefix. They install into font-config. If
font-config is a build dependency, that means you can uninstall it
without uninstalling the font packages, which wouldn't make sense
since they install into font-config. So I switched them back to
the default deptype.
* Minor formatting changes to ncview
* Add half-way done xorg-server package
* Add packages for Xorg test suites, not yet tested!
* Add packages for Xorg data
* Add first quarter of Xorg apps
* Add more packages for Xorg apps
* Add dependencies to mesa
* Remove comments from mesa package
* Flake8
* Add more packages for Xorg apps
* Add more packages for Xorg apps
* Add more packages for Xorg apps
* Add more packages for Xorg apps
* Add more packages for Xorg apps
* Add package for Sublime Text
* Add packages for remaining Xorg apps
* Revisit testing packages, add missing dependencies
* Add dependencies, clean up FIXMEs
|
|
* Rebase and merging using platform.system
Rebasing and merging using platform.system instead of uname -a.
* Add missing import platform statement
* Remove subprocess import
Remove ununsed import subprocess to make changes flak8 compliant
|
|
|
|
On Cray machines, use the Cray compile wrappers instead of MPI wrappers.
|
|
Finer-grained locking
|
|
|
|
|
|
- Fix a bug handling '/' characters in branch names.
- Make tarballs use a descriptive name for the top-level directory, not
just `opt`.
|
|
|
|
- Locks now use fcntl range locks on a single file.
How it works for prefixes:
- Each lock is a byte range lock on the nth byte of a file.
- The lock file is ``spack.installed_db.prefix_lock`` -- the DB tells us
what to call it and it lives alongside the install DB. n is the
sys.maxsize-bit prefix of the DAG hash.
For stages, we take the sha1 of the stage name and use that to select a
byte to lock.
With 100 concurrent builds, the likelihood of a false lock collision is
~5.36e-16, so this scheme should retain more than sufficient paralellism
(with no chance of false negatives), and get us reader-writer lock
semantics with a single file, so no need to clean up lots of lock files.
|
|
|
|
- Closing and re-opening to upgrade to write will lose all existing read
locks on this process.
- If we didn't allow ranges, sleeping until no reads would work.
- With ranges, we may never be able to take some legal write locks
without invalidating all reads. e.g., if a write lock has distinct
range from all reads, it should just work, but we'd have to close the
file, reopen, and re-take reads.
- It's easier to just check whether the file is writable in the first
place and open for writing from the start.
- Lock now only opens files read-only if we *can't* write them.
|
|
|
|
|
|
- Locks will now create enclosing directories and touch the lock file
automatically.
|
|
- Make sure we write, truncate, flush when setting PID and owning host in
the file.
|
|
A use case where the previous approach was failing is :
- more than one spack process running on compute nodes
- stage directory is a link to fast LOCAL storage
In this case the processes may try to unlink something that is "dead" for them, but actually used by other processes on storage they cannot see.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(#1897)
|
|
Fixed flake8 issues
|
|
* spack list : merged package-list into the command
* list : removed option for case sensitivity
|
|
|
|
|
|
Use boost system layout by default
|
|
|