summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-08-08cc: don't use sed to filter system directoriesTodd Gamblin2-42/+93
- filtering using sed causes most builds to slow down quite a bit, as the compiler wrapper has to run sed many times, and *it* runs many times - do the system directory parsing directly in bash
2018-08-08refactor: clean up and fix the cc testTodd Gamblin2-414/+503
- Add tests to ensure that RPATHs are not added in cc mode, which can cause some builds to fail. - Change cc.py to use pytest style - Instead of writing out all the flags, break the flags down into variables so that it's easy to read what each test is supposed to check. This should make cc.py more maintainable in the future.
2018-08-08bugfix: cc should not add -L or -Wl,-rpath in compile-only modeTodd Gamblin1-80/+108
- Adding -L and -Wl,-rpath to compile-only command lines ("cc mode" or "-c") causes clang (if not also other compilers) to emit warnings that confuse configure systems. - Clang will print warnings about unused command-line arguments. - This fix ensures that -L and -Wl,-rpath are not added if the compile line is just building an object file with -c - This also cleans up the cc script in several places.
2018-08-08Restore cc: package search paths come before dependency paths (#4692)Gregory Becker4-158/+330
Spack currently prepends include paths, library paths, and rpaths to the compile line. This causes problems when a header or library in the package has the same name as one exported by one of its dependencies. The *dependency's* header will be preferred over the package's, which is not what most builds expect. This also breaks some of our production codes. This restores the original cc behavior (from *very* early Spack) of parsing compiler arguments out by type (`-L`, `-I`, `-Wl,-rpath`) and reconstituting the full command at the end. `<includes> <other_args> <library dirs> <rpaths>` This differs from the original behavior in one significant way, though: it *appends* the library arguments so that dependency libraries do not shadow those in the build. This is safe because semantics aren't affected by *interleaving* `-I`, `-L`, and `-Wl,-rpath` arguments with others, only with each other (so the order of two `-L` args affects the search path, but we search for all libraries on the command line using the same search path). We preserve the following: 1. Any system directory in the paths will be listed last. 2. The root package's include/library/RPATH flags come before flags of the same type for any dependency. 3. Order will be preserved within flags passed by the build (except system paths, which are moved to be last) 4. Flags for dependencies will appear between the root flags and the system flags, and the flags for any dependency will come before those for *its* dependencies (this is for completeness -- we already guarantee this in `build_environment.py`)
2018-08-07elfutils: update version and add variants (#8891)Mark W. Krentel1-8/+40
* elfutils: update version and add variants Add latest version 0.173. Add variants bzip2, xz and zlib to support reading compressed DWARF sections, default True. Move maintainer-mode to a variant with default False. This is only useful for developers who want to modify the source for generated files. * Add dependency on zlib for reading compressed DWARF sections. Add variants to use bzip2 and xz for compressed sections. Remove maintainer mode and the dependencies on flex and bison. These are not used for one-time builds. Be sure to squash both the commits and the commit messages.
2018-08-07Fixing the addition curly brackets to conform to the rest of the templates ↵Micheal Quinn1-1/+1
usage of a literal curly bracket
2018-08-07Adding logic to the autoload if statement so it only fire if the module is ↵Micheal Quinn1-1/+1
being loaded.
2018-08-07Fix performance issue when compiling. (#8828)cedricchevalier191-4/+3
* Fix performance issue when compiling. Spack was doing active wait when compiling, spoiling one core. My fix consists in not setting any timeout for select, instead of the previous 0 second. * Fix comments about select.select timeout
2018-08-07Add libs attribute to mesa and mesa-glu packages (#8904)Adam J. Stewart5-10/+17
Also fix dependency version in glvis package. Fixes build errors mentioned in #8454.
2018-08-06libstdc++ detection uses os.path.realpath instead of os.readlink (#8865)Paul Chelarescu1-1/+1
2018-08-06spack general packages.yaml defaults: add unwindGeoffrey Malcolm Oxberry1-0/+2
This commit adds 'libunwind' as the default 'unwind' provider in spack. This preference should be overridden by the darwin/packages.yaml file on macOS. Continues the changes discussed in
2018-08-06caliper: update to use unwind virtual packageGeoffrey Malcolm Oxberry1-1/+1
2018-08-06gperftools: use unwind virtual packageGeoffrey Malcolm Oxberry1-1/+1
2018-08-06mfem+libunwind: use "unwind" virtual packageGeoffrey Malcolm Oxberry1-2/+2
2018-08-06darwin packages.yaml defaults: add unwind providerGeoffrey Malcolm Oxberry1-0/+7
This commit adds default unwind providers to the default packages.yaml for darwin. Compiler versions are supplied with the apple-unwind package so that apple-unwind is only used with Apple's clang fork, and not with LLVM's clang.
2018-08-06apple-libunwind: new package, provides unwindGeoffrey Malcolm Oxberry1-0/+84
This commit continues the changes discussed in #8823 by creating a new "apple-libunwind" placeholder package that supplies instructions for how to configure packages.yaml to register Apple's libunwind implementation with spack. This package also provides the "unwind" virtual package representing the libunwind base API. The clang-apple compiler version should be specified in packages.yaml so that apple-unwind is only used with Apple's clang compiler, not the stock LLVM compiler.
2018-08-06Make libunwind provider of unwind virtual pkgGeoffrey Malcolm Oxberry1-0/+2
This commit begins addressing the ideas discussed in #8823. The libunwind library now provides the "unwind" virtual package, which represents the "libunwind base API" common to LLVM libunwind, Apple's LLVM libunwind, and non-GNU libunwind.
2018-08-06py-crossmap: needs py-setuptools (#8898)Levi Baber1-1/+3
* py-crossmap: needs py-setuptools * py-crossmap: additional deps * py-crossmap: make bx build/run
2018-08-06add Charliecloud 0.9.1 (#8902)Reid Priedhorsky1-0/+1
2018-08-06Remove default variant bug from list of known issues (#8900)Adam J. Stewart1-32/+0
2018-08-06Docstring typo: builing -> building (#8896)George Hartzell1-1/+1
2018-08-06Bump R to v3.5.1. (#8895)健美猞猁1-0/+1
2018-08-06Libtool: version 'develop' (#8894)Sergey Kosukhin2-0/+34
* libtool: add version 'develop'. * libtool: patch: correct parsing of compiler output when collecting predeps and postdeps.
2018-08-06 modified: var/spack/repos/builtin/packages/py-pytest/package.py (#8890)Sajid Ali1-1/+2
2018-08-06LIKWID: Switch to perf_event backend to allow user installations but with ↵Thomas Roehl1-6/+14
limited features (#8886) * Switch to perf_event backend to allow user installations but with limited features. * Fix flake8 issues * Fix flake8 issues remove filter for INSTALL_CHOWN * Incorporate the comments
2018-08-06Bump mvapich2 to the latest v2.3 release. (#8892)健美猞猁1-1/+2
2018-08-05Add unzip runtime dependency to lua package (#8831)George Hartzell1-0/+2
* Add unzip to lua-luaposix I ended up on an [Ubuntu] system that hadn't had unzip employed and discovered lua-luaposix requires it (while buildig Lmod). Closes #8533 * Move unzip prereq to lua, type=run Rather than touching up each of the lua rocks (packages) that need unzip, make it available as a run dependency in lua. Tested by building lmod on a minimal Ubuntu system.
2018-08-04Generate coverage reports for all unit and build testsAdam J. Stewart2-14/+14
2018-08-04revert cd9691de5 (#4692) while we work on a fix.Todd Gamblin4-330/+158
2018-08-04kim-api: initial commit (#8873)Christoph Junghans1-0/+46
* kim-api: initial commit * Update package.py
2018-08-03Package/flang: Updated to use own version of llvm (#8766)Tin Huynh3-37/+89
Flang now uses its own version of llvm and clang (called flang-driver). This is handled by adding flang-specific versions of the LLVM package and updates flang to depend on those versions.
2018-08-03spack spec: no extra newline with --yaml; error with no specsTodd Gamblin2-1/+16
- `spack spec` now returns an error if given no specs - removed superfluous trailing newline from `spack spec --yaml` output (only one newline now)
2018-08-03simplemoc: version bump (#8884)Christoph Junghans1-2/+2
2018-08-03libmonitor: update version and add variant to configure (#8834)Mark W. Krentel3-8/+63
* libmonitor: update to version 2018.07.18 and add variant to configure for hpctoolkit. * Specify the @2013.02.18 version in cbtf-argonavis and cbtf-krell, since this is no longer the default version. These are the only other packages that use libmonitor.
2018-08-03Update bash completion with new spack arch flagsAdam J. Stewart1-1/+2
2018-08-03Add spack arch --operating-system and --target flagsAdam J. Stewart3-6/+40
2018-08-03Update broken codesign.llnl.gov urls (#8880)Abhinav Bhatele5-11/+11
* amg2013: fix homepage and url * kripke: fix homepage and url * lcals: fix homepage and url * lulesh: fix homepage and move to git * urls on single line
2018-08-03arpack: add version 3.6.2 (#8881)Geoffrey Oxberry1-0/+1
2018-08-02dmd: a new package. (#8826)健美猞猁1-0/+51
* dmd: a new package. * Install src for dmd. * Install src to prefix.src. * Replace copy_tree with install_tree.
2018-08-02libdwarf: remove use of hide_files()Todd Gamblin2-84/+63
- This was a nasty workaround due to the way our compiler wrappers used to work. We don't want to have to modify our elfutils installation to install libdwarf. - Since cd9691de5, we no longer need this because the package will always come before dependencies in our include order.
2018-08-02new package: XSD (#8784)dorier1-0/+52
2018-08-02flux: update flux-core package and add a flux-sched package (#8818)Stephen Herbein5-90/+261
Renames the flux package to flux-core and updates its dependencies, versions, and variants. Adds a flux-sched package. This also updates two flux-core dependencies: lua and czmq.
2018-08-02Change MUMPS to allow it to build with clang+xlf compiler combination (#8388)Dan FitzGerald4-200/+92
The mumps package was unable to build using the llvm clang compiler suite, as it defaulted to using mpif90 for linking and mpif90 cannot be used for linking shared library code. This PR modifies the MUMPS package.py to allow it to use IBM XL Fortran for linking. It also eliminates the need for the existing MUMPS IBM XL patches by having package.py specify the compiler-dependent "shared" flag to the linker, and always using the compiler suite's Fortran compiler for linking.
2018-08-02Fix openmpi to work with slurm/pmi and mxm (#8427)Tom Merrick1-3/+6
* Add binutils+libiberty for mxm fabric * Help find the pmi library when using the slurm scheduler
2018-08-02Package py-biom-format fixes (#8727)Levi Baber1-1/+2
* py-biom-format: needs py-setuptools at runtime * py-biom-format: needs py-pyqi
2018-08-02New package: GRNBoost (#8763)Yifan Zhu1-0/+61
2018-08-02Replace pkg-config dependencies with virtual (#8783)Michael Kuhn9-14/+14
Several packages specified pkg-config as a dependency, which is a specific implementation of the pkgconfig virtual. Most packages do not request a specific implementation. The current concretizer may choose a different implentation of pkgconfig for the nonspecific dependents, which conflicts with the request for pkg-config. This replaces all requests for a specific implementation of pkgconfig with the virtual package as a temporary solution to the issue.
2018-08-02package neovim: add info for version 0.3.1 (#8866)Matthias Wolf1-0/+1
2018-08-02Update homepage for laghos (#8864)Adam J. Stewart1-1/+1
2018-08-02Adding lazy property python module (#47) (#8867)Matthias Wolf1-0/+37