+ This change fixes a problem that manifests when trilinos is built against a
MKL installation defined as an external package. In this scenario, the MKL
libraries are found one directory deeper than for the case where spack
provides MKL. The extra directory is a platform name like 'intel64'.
+ The changes in this PR were recommended by contributor @davydden. I
implemented and tested with intel@16.0.3. These changes fix the issue I
reported. I did not attempt building trilinos against other BLAS
implementations.
+ fixes#1923
* mfem: add tarball extension
Add tarball extension as a result of a feature added in PR#1926, which
fixes earlier issues in this PR (PR#1202). Prior to adding this feature,
Spack would not autodetect the extension of the tarball downloaded from
the redirected, shorted Google URL, requiring a messy hack. This hack
worked for mfem version 3.1, but led to errors when adding mfem version
3.2 because the files downloaded from Google did not contain the package
name, version number, or extension. Adding the extension enables Spack
to rename the tarball downloaded from Google to a sensible name that is
compatible with its filename parsing algorithms so that Spack "does the
right thing" (detects that the file is a GZipped tarball, decompresses
it, runs GNU Make) in fetching and staging the package.
* mfem: add linkage to KLU & BTF
Add linkage to the KLU & BTF solvers, which are now enabled in MFEM for
versions 3.2 and later.
* mfem: Add superlu-dist variant
Add linkage to SuperLU_DIST, which is a new linear solver interface for
MFEM versions 3.2 and later.
* mfem: add netcdf variant for cubit mesh support
Add NetCDF variant for MFEM versions 3.2 and later; installing the
NetCDF interfaces enables CUBIT mesh support.
+ Cray compile wrappers are MPI wrappers.
+ Packages that need to be compiled with MPI compile wrappers normally use
'mpicc', 'mpic++' and 'mpif90' provided by the MPI vendor. However, when using
cray-mpich as the MPI vendor, the compile wrappers 'CC', 'cc' and 'ftn' must
be used.
+ In this scenario, the mpich package is hijacked by specifying cray-mpich as an
external package under the 'mpich:' section of packages.yaml. For example:
packages:
mpich:
modules:
mpich@7.4.2%intel@16.0.3 arch=cray-CNL-haswell: cray-mpich/7.4.2
buildable: False
all:
providers:
mpi: [mpich]
+ This change allows packages like parmetis to be built using the Cray compile
wrappers. For example: 'spack install parmetis%intel@16.0.3 ^mpich@7.4.2 os=CNL'
+ This commit relies on the existence of the environment variable CRAYPE_VERSION
to determine if the current machine is running a Cray environment. This check is
insufficient, but I'm not sure how to improve this logic.
+ Fixes#1827
* fix blas-lapack in scipy and numpy
* py-numpy: do not set rpath on macOS
* py-scipy: do not set Blas/Lapack. This appears to be picked up from py-numpy
* py-numpy: don't write rpath= in Sierra only
* py-numpy: add a link to build notes
* Updated nettle to have m4 as an immediate dependency to match new PATH
construction logic which only includes immediate dependencies.
* Update package.py
* Added check for ppc64le because configure cant guess the build type for rhel on ppc64le
Expand/clarify description of dependency types
Refactored getting the arch so that its less verbose
* Fixed flake8 issues
* everytrace: New package
Everytrace ensures that stack trace is obtained every time a program exits, for whatever reason.
* everytrace: Change CMake to build dependency
* Renamed to everytrace-example, flake8 and copyright issues.
* flake8
* Missing type=build
* Warn user if flake8 can't find setuptools
* Add missing dependencies of flake8
* Updates to py-autopep8, make packages activateable
* Check for presence of setuptools for Sphinx too
* Fix bug in order of commands
* Adding last version of fenics and making trilinos not ambiguous on hdf5
* forcing fenics to ignore hdf5 cxx
* Adding deptypes and correcting the hdf5 patch
* flake8 corrections
* cleaning some useless code
* Provide new versions of llvm.
+ Provide file list and md5 hashes for 3.8.1 and 3.9.0.
+ Clean up indentation for the 'releases' data structure to improve
consistency.
* Adding a block of code to the 'resources' structure for cfe.
* Merge cfe and clang resources into single entity.
* Added hadoop, spark, and variant spark+hadoop
* Docstrings, dependency types, urls, copyright
* Flake8 fixes, link dependency for hadoop
* Build type for spark, env problem setting JAVA_HOME
* New package: libquo
libquo is 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.
https://github.com/losalamos/libquo
* Remove use of 'which' and fix style non-conformance.
* Add libint package
* Add Intel optimization flags recommended by CP2K
* Add new version and Intel compiler optimization flags for libxc
* Add older version of libint
* Libint depends on GMP C++ library
Pro tips from @adamjstewart:
* line too long in package description
* name it grib-api instead of grib_api
* depend on netcdf without reference to unnecessary constraints
* py-pil: Does not build with Python3.
* Set py-pillow to be the default pil provider
* Update package.py
* Change to comments requested by adamjstewart
* Remove version constraint from extends(), avoid a Spack bug.
* dealii: add missing python dependency
* boost: fix a bug which broke it on macOS with clang+gfortran
Boost was using gcc compiler instead of clang++, which lead to
cryptic Undefined symbols linking errors for boost::python::objects::function_object()
when building other packages against boost+python.
* boost: add exceptions for intel
* boost: use spack_cxx
* Turned <provider>_libs into an iterable
Modifications :
- added class LibraryList + unit tests
- added convenience functions `find_libraries` and `dedupe`
- modifed non Intel blas/lapack providers
- modified packages using blas_shared_libs and similar functions
* atlas : added pthread variant
* intel packages : added lapack_libs and blas_libs
* find_library_path : removed unused function
* PR review : fixed last issues
* LibraryList : added test on __add__ return type
* LibraryList : added __radd__ fixed unit tests
fix : failing unit tests due to missing `self`
* cp2k and dependecies : fixed blas-lapack related statements in package.py
Python will look to link with libncursesw in preference to libncurses. Since
ncurses in spack is built without suffixes there is no libncursesw and
python will link to the system libncursesw for _curses.so and
_curses_panel.so, as well as libpanelw for _curses_panel.so.
This PR introduces a patch that simple removes the check for ncursesw in
setup.py and therefore sets `curses_library` to `ncurses`.
* Added missing libtiff dependency
* added dependency on fontconfig
* Added version 2.2.3
* use autotools rather than cmake
The cmake build was not producing a complete install.
* There was no versioning of the installed libraries.
* gdlib-config was missing
* pkgconfig directory was missing
These problems do not happen when built with autotools.
yt is a python package for analyzing and visualizing volumetric, multi-resolution data from astrophysical simulations, radio telescopes, and a burgeoning interdisciplinary community.
* Fixed a few small bugs in the 'git-lfs' install script.
* Fixed a bug in the '(go|go-bootstrap)@1.4.2+test' install scripts.
* Fixing a minor style issue in the 'git-lfs' install script.
I encountered an HPC system where PETSc's configure stage does not find a valid `cpp` (C preprocessor). Explicitly pointing to Spack's `cpp` wrapper resolves the problem.
* Fixed a bug that was causing post-install METIS tests to fail.
* Improved the patching procedure used in the 'metis' install script.
* Enabled patch skipping for the 'metis' and 'parmetis' packages.
* Fixed some minor style issues in the 'parmetis' package.
* Improved the 'metis' test fix and added 'run_tests' support.