Spack wants URL info even for external packages. Without it, I get
the following error:
NoURLError: Package SpectrumMpi has no version with a URL.
File "/home_local/serbanspack/spack/lib/spack/spack/repository.py", line 580, in get
self._instances[key] = package_class(copy)
File "/home_local/serbanspack/spack/lib/spack/spack/package.py", line 562, in __init__
f = fs.for_package_version(self, self.version)
File "/home_local/serbanspack/spack/lib/spack/spack/fetch_strategy.py", line 878, in for_package_version
url = pkg.url_for_version(version)
File "/home_local/serbanspack/spack/lib/spack/spack/package.py", line 682, in url_for_version
raise NoURLError(cls)
* Creating a spack package for LLNL's LBANN (Livermore Big
Artificial Neural Network) training toolkit.
* Recipe for building LBANN toolkit. Contains limited feature set and
is optimized for building with GNU gcc and OpenBLAS.
* Removed unnecessary dependencies based on reviewers feedback.
* Added support for the int64 data type in the Elemental library. This
is required for supporting indices for large matrices.
* Added a variant to force a sequential weight matrix initialization.
This is slow, but provides an initialization that is independent of
model parallelism.
* Added a guard to prevent building Elemental with the Intel compiler
for versions that have known bugs.
* New package.py for ExM C-Utils: An initial package dependency for Swift/T
* New package turbine
* Fix package.py as requested by @adamjstewart
* New package.py for ADLB/X: A 2nd package dependency for Swift/T
* Add latest version of GNU Parallel (#3106)
* Address formatting guidelines from @adamjstewart
* WIP on new Turbine package.py
* Formatting fixes
* Complete Turbine package.py
[The fix](https://github.com/golang/go/issues/17986) for the small buglet addressed by `misc-cgo-testcshared.patch` has been merged into the tree a while back. I was surprised to see that it wasn't in 1.7.5 and did a bit of digging. It is *has not* been merged into the 1.7 branch but it *has* been merged into 1.8 (and therefor the patch will no longer be necessary).
Figured I'd document my digging for the next person to come along.
* spectrum-mpi: Add new package file for external package
IBM Spectrum MPI is a commercial implementation of MPI based on
OpenMPI. It is usually install in /opt/ibm/spectrum_mpi.
Users need to add the Spectrum MPI package in their packages.yaml
file as follows:
packages:
spectrum-mpi:
version: ['10.1.0.2']
paths:
spectrum-mpi@10.1.0.2: /opt/ibm/spectrum_mpi/
buildable: False
all:
providers:
mpi: [spectrum-mpi@10.1.0.2]
* spectrum-mpi: Added license files and removed the versions
No need for versions as the package is external.
* spectrum-mpi: Remove extraneous defines
Keep only the defines that other MPI implementation define in their
package file:
self.spec.mpicc
self.spec.mpicxx
self.spec.mpif77
self.spec.mpifc
Update the go package to v1.7.5.
- This release no longer needs the time-test patch (it's been merged upstream).
- This release still seems to need the cgo-testcshared patch.
- Also add a comment about environment set up that I need to build it successfully on a very large server.
Tested on CentOS 7.
The repository used by the texlive installer defaults to a redirector
that sends one off to various URLs depending on <fill in the blank>.
This is problematic because all of the mirrors do not update in
synchrony and bad tarballs often hang around for a while.
This leads to problems that are particularly hard to diagnose because
you're likely to end up using a different repo the next time around.
This commit constraints the package to a particular, mainstream,
repository. It's not fast, but it's consistent and usually correct.
It also updates the installer digest, because no day is complete
without updating it at least (sigh) once.
* Different versions of cmake need diff vers of openssl. See Issue https://github.com/LLNL/spack/issues/2990 for background.
Versions of cmake through 3.6.9 seem to need OpenSSL up to 1.0.99. Later
versions can use the current release (thanks to @citibeth for
[digging up details](https://cmake.org/pipermail/cmake/2016-November/064631.html)).
@davydden suggested this change.
Without it I *am not* able to build `cmake@3.6.1` on CentOS 7 and I *am*
able to build `cmake@3.7.2`.
Tested with `cmake@3.7.2` and `cmake@3.6.1` on CentOS 7.
With this change I am able to build both `cmake@3.6.1` and `cmake@3.7.2`
on CentOS 7.
There was a new release of Ant (1.9.8) which led to the v1.9.7
tarball disappearing.
This changes the URL to Ant's archive dir, which seems to contain
*everything* including the two current releases (1.9.8 and 1.10.0)
It adds a digest for 1.9.8.
It adds and comments out a digest for 1.10.0 (which requires Java 8),
as I have not tested it.
We just released 2.0.2 yesterday, so add in that release for
spack. Don't need the PMI patch for this release.
Signed-off-by: Howard Pritchard <howardp@lanl.gov>
cran.r-project.org runs on a single old-school server in Austria
and could potentially be overloaded if "everyone" used it.
cloud.r-project.org is a cloud-based repository that "automatic redirection to servers worldwide [...]", cf. https://cran.r-project.org/mirrors.html.
I assume, that cloud.* can be scale up as needed. Out of the official CRAN mirror, this should be the safest one to pick if a static CRAN mirror is needed.
* Add several new R packages
* Add a few more R packages
* Update more versions
* Convert Package to RPackage
* Add a few more packages
* Add missing dependencies
* AutotoolsPackage: added configure_directory to permit build out of source. The configure script executable is now invoked with an absolute path. Modified a few packages accordingly.
* build_systems: functions returning directories are now properties
* build_systems: fixed issues with tcl and tk
* AutotoolsPackage: reworked recipe for autoreconf
* Spec.satisfies accesses Spec.concrete as property
Fixes#2760
When copying a spec, _concrete is always set to False for each
dependency. "Spec.satisfies" was accessing the member "_concrete"
directly instead of using the property "concrete". This means that
if you copy a spec, the dependencies will be considered equal, but
did not necessarily satisfy one another. Spec.satisfies is a
prerequisite for a package to be considered an extension; as a
consequence, an extension with run-time dependencies that were also
extensions did not activate those extensions. This updates
Spec.satisfies to avoid checking the cached member "_concrete"
directly.
* Added test to check for activation of dependency extension
* Added test to check for transitive satisfiability between a spec and its copy
* Update libquo's homepage, url, and description.
Recently LANL moved to lanl (from losalamos).
* Fix formatting.
Conform to style guidelines.
* More style updates.
Doesn't appear to be necessary, but for good measure.
* oce: fix fetching
apparently the fetcher is confused when there is a mixture of 3-digits
versions and 2-digits versions, i.e. 0.18 and 0.17.2
* flake8
* Updating udunits.
Udunits 2.2.21 is no longer on the unidata ftp site.
The latest is 2.2.23, adding that and it's md5sum.
* Updating udunits2 download URL.
The Unidata ftp site does not keep previous versions of udunits.
However all the tagged versions are in their github.com repository.
Updating the URL to use github.
* Updating udunits2 with a autoreconf def.
The udunits packages on github do not contain a configure script.
One has to run autoreconf to generate it, so adding that to
package file.
Also updated to the latest version and all md5 checksums.
* PackageMeta: `run_before` is an alias of `precondition`, `run_after` an alias of `sanity_check`
* PackageMeta: removed `precondition` and `sanity_check`
* PackageMeta: decorators are now free-standing
* package: modified/added docstrings. Fixed the semantics of `on_package_attributes`.
* package: added unit test assertion as side effects of install
* build_systems: factored build-time test running into base class
* r: updated decorators in package.py
* docs: updated decorator names
* Add dependency on perl
The build process uses perl and also needs `Test::More`.
Some distros, e.g. CentOS, break the core Perl distribution
into separate packages, so it's possible to "have perl" but
not have all the bits one needs to build OpenSSL.
We'll just install one of ours, which comes with all of its
factory parts included.
* Remove uninformative comment
> # Also requires make
doesn't really add any value...
* Fix configure's zlib version check
R wants a version of zlib that is 1.2.5 or newer.
The version checking code just does a lexicographic comparison
of the first 5 characters of the string, so it seesthat the latest
zlib version, 1.2.10, as 1.2.1 and fails.
This patch changes the comparison to use zlibs' hex ZLIB_VERNUM
so that it does not suffer from this problem.
A version of this patch is wending it's way through the R comunity
community and will/should be included in a future release.
I tested the patch with the current R, 3.3.1.
* Tighten zlib dependency version (>= 1.2.5)
* Convert patch to level=1 format.
* libmonitor does not exist at
http://libmonitor.googlecode.com/svn/trunk/
Change location to HPCToolkit version at github. Specify the hash corresponding
to the 20130218 version.
* When xcb is version 1.11, patch the configure file so it doesn't trip on
pthread-stubs and xau.
* Add os.getcwd()/lib to LD_LIBRARY_PATH, instead of nuking
existing LD_LIBRARY_PATH.
* cfitsio: Allow building as shared libraries
- Allow building as shared libraries
- Also add optional bzip2 variant
- Also update to newest version
This requires the recent correction to “fix_darwin_install_name”.
* cfitsio: Simplify code, default to +shared
* Adding 'self.' to the spec call for configure_args
* Updating this to set spec to self.spec
* More updates to the configure_args spec calls
* Another spec issue
* Another spec issue.
* And another spec issue
* Switching cmor back to self.spec.
- Add a PythonPackage class with build system support.
- Support build phases in PythonPackage
- Add a custom sanity check for PythonPackages
- Get rid of nolink dependencies in python packages
- Update spack create to use new PythonPackage class
- Port most of Python packages to new PythonPackage class
- Conducted a massive install and activate of Python packages.
- Fixed bugs introduced by install and activate.
- Update API docs on PythonPackage
* Set MPI[lang] env var to compiler wrappers on cray
Sets MPICC, MPICXX, MPIFC etc to point to the compiler wrappers on Cray systems.
Some packages look for MPIs via environment variables - e.g adios
* Use spec to check for Cray
* os is no longer used.
* petsc: add 64bit variant
* hypre: add int64 variant
* superlu-dist: add int64 variant
* petsc: add int64 variant
* metis: rename idx64 to int64 to make it consistent with other packages
* mumps: rename idx64 to int64 to make it consistent with other packages
* dealii: rename 64bit to int64 to make it consistent with other packages
added latest version of isl. Needed to get llvm/clang in the latest
trunk to build via spack, but there are more versions available.
what is the policy regarding those? Add what we need for now?
* Updating BoxLib with the ability to build again.
* Using Spack MPI compilers directly.
* Fixing typo.
* Using tarball from github archive for boxlib.
* Added customization for make targets in 'build' and 'install' phases for CMakePackage
* Use rst in build system docs so that Sphinx generates nice API docs
* Allow AutotoolsPackages to be built in a different directory
* Flake8
* Fix missing import
* Allow configure to be located in different directory
* Update espressopp to use build targets
* Flake8
* Sphinx fix, lists must be a new paragraph
* Back out change that allowed a configure script in a different directory than build_directory
* Add missing deps, build in parallel
* Missing space for rst list
Although it hurts a little, officially pre-compiled headers in
boost are only supported for gcc & msvc and the latest clang
releases still fail to build boost with it.
Therefore, I disabled building those to get boost build with
clang 3.9.0 on an Ubuntu 14.04 (x86).
Links to documentation and boost bug reports are inline, so
people can later on check if they still apply. Seems just to
be a bug in `Boost.Build` that tries to set `-o` with multiple
output files.
* Added support for Octopus 6.0 and the optional libraries: metis, parmetis, netcdf, arpack-ng, and scalapack.
* Fix PEP 8 line too long error.
* Changed format syntax {} to {0} to support Python 2.6.
* Adding the py-ipdb package for more stable debugging with iPython.
* Removing deprecated python support, adding missing dependencies.
* Adding version checks for (i)python
* Update the krell institute products to use the latest features of spack for building on cluster platforms.
* Address travis error messages and resubmit the pull request.
* Update the contents of openspeedshop package.py so it passes the flake8 tests.
* Fix flake8 error-whitespack issue in mrnet package.py file.
* Add updates based on spack reviewer feedback.
* More fixes based on comments from reviewers. Switch using extend to using append, remove additional setting of PATH and LD_LIBRARY_PATH that should not be required due to RPATH.
* More review related changes. Update MPIOption.append lines and take out xercesc references.
* Create a base options function for common openspeedshop base cmake options to reduce redundencies.
* Add libxml2+python depends on to get around issues with the libxml2 package file.
* Using boost over 1.60.0 causes compile errors. This is a known boost bug. Also, dyninst-9.2.0 is set to be the vesrion of dyninst to use with OSS, as of now. The newer version fails to build.
* Fix bad syntax in specifying the boost version range.
* Update the version numbers for the krell institute components and tools: cbtf and openspeedshop.
* Do not build glib for qt3, it is not needed and causes build problems at this time anyway.
* Removing the nobuild, nolink, and alldeps dependency types in favor of being explicit.
* This will help with maintenance going forward, as adding more dependency types won't affect existing declared dependencies in weird ways.
* default deptype is still `('build', 'link')`
* Remove +mpi variant from NCO
* Update NCO deps to AutotoolsPackage
* Update the other NetCDF packages to AutotoolsPackage
* ANTLR has a nolink deptype on java, don't worry about csharp
* Remove restrictions from NCO package, fix homepage
* Add version 4.6.3 of NCO
* Missed AutotoolsPackage for NetCDF-CXX4
* NetCDF tests fail when run in parallel
* Remove commented out dependency
* Add documentation dependency
* espressopp: package for the ESPResSo++ software
This commit adds a package for the ESPResSo++
simulation software.
* Move Espressopp package to CMakePackage
This commit moves Espressopp package to CMakePackage.
Addresses some comments in the PR.
* Remove run_tests and changed type of dependencies
Addressed some comments from @adamjstewart.
Removed global run_tests setting and removed type from many
dependencies. Set type for py-mpi4py to 'nolink'.
* Updated to last version and fix mpi4py dependency
Added latest espressopp version and changed mpi4py (version) dependency for
different espressopp versions.
* Changed mpi4py version requirements for espressopp
Changed py-mpi4py version requirements for espressopp@1.9.4 according
to the package build requirements for that version.
Adds the following packages:
node-js py-backports-abc py-functools32 py-pycurl py-vcversione
npm py-certifi py-jsonschema py-tornado py-zmq
- Added python packages that are dependencies for the Jupyter suite
- Update new python packaages to use extension package install function.
- Added npm and node-js packages