forked from spack/spack
-
Notifications
You must be signed in to change notification settings - Fork 0
Telcon: 2015 12 17
Todd Gamblin edited this page Dec 17, 2015
·
10 revisions
- Todd Gamblin
- Mark Miller
- Mike Collette
- François Bissey
- Peter Scheibel
- Jim Galarowicz
- David Shrader
- Greg Becker
- Ray Loy
- Matt Legendre
- Ben Boeckel
- Adam Moody
- Mario Melara
- Greg Lee
- Lots of new contributors after SC (thanks everyone!)
- many PRs from new users (Erik Schnetter submitted many PRs right after the talk!)
- Need to merge his fix for lib order in
cc
wrappers (195)- Need to test and merge it with a similar internal fix we have
- New users on the mailing list (from EPFL, ANL, many others)
- We moved to github.com/llnl/spack
- update your remotes!
- Greg Becker & Mario Melara report that Cray integration is working well on NERSC machines.
- NERSC is making packages for Cori now.
- this is going well, need module-based externals
- Will come with module-based compiler detection & support.
- Mario had a "spackdown" at NERSC
- Gave Spack tutorial to NERSC users
- notified people of the google group and telcon
- PR 210: multiple repositories is going to be merged soon.
- restructures
/var/spack/packages
to/var/spack/repos/builtin
- allows for separate repository directories & package namespaces
- can directly
import
one package from another via namespaces (e.g., import spack.pkg.builtin.mpich
)
- PR 120: External dependencies
- Depend on system MPI, other packages.
- Many updates and conversations from the folks at EPFL
-
PR 208: multiple tarballs per package
- Looks good -- needs testing and will be merged.
- Many package updates (
mvapich2
,fftw
,gnuplot
, others...)
- Spack test XML output with nose 202
- Spack
test-install
command already merged
- Externals now added directly to
sys.path
(Peter Scheibel)
- needed for
nose
- no more
from external import argparse
- PR 86: Open|SpeedShop and associated packages
- Qt and paraview updates from Ben Boeckel (164, 165, 166, 168)
- Build Paraview on
catalyst
- Working on
vulcan
withxlc
- Ran into issues with libtool + xl (see below)
- Working on OS X version
- Scogland submitted shell arg handling fix for
zsh
(205)
- I need to test with bash -- if someone could do that and sign off before I get to it, it would be nice.
- Greg Lee added
-D
flag: run Spack underpdb
- Most of these were related to the way specs are read in from the database.
- Issue 209: Fixed bug in some virtual dependency handling
-
satisfies()
was not working right with multiple vdeps.
-
Issue 203: Figured out some issues with
gcc
builds
- 5.3.0 should now build properly
- Issues were with RPATHs passed to the internal bootstrap in gcc
- Issues with
libtool
using a compiler's name to deduce flags (François Bissey)- Similar to prior
distutils
issues (which we patched) - Todd working on a fix for this -- see proposed solution in this thread
- Similar to prior
-
Issue 244
- Remaining issue relates to handling packages that conditionally extend others.
- Greg and Mario to work on:
- Using modules as external packages (on cray)
- auto-load modules to load system MPI
- Adding
sourceme
files to compilers (e.g. load Intel'scompilervars.sh
automatically)
- Using modules as external packages (on cray)
- Custom compiler flags (Greg Becker authored, Todd thinking about merging)
- Better PGI & XL compiler support in Boost (Peter Scheibel)
- Paraview (Kitware, Ben Boeckel)
- Sorry if I failed to mention anything above -- community continues to grow!
- People want us to test on Macs -- I'd like to
- Seeing about getting some Mac build agents at LLNL -- likely not happening short-term
- Mark M.: AWS may offer mac build bots
- Todd: also want Ubuntu build bots; could do those over AWS
- Discuss improving package debug-ability
- Matt: spack packages can be difficult to debug
- source code is gone after build, so DWARF points at source that doesn't exist
- Things Matt is working on:
- Make more packages support
+debug
option.
- support in a common way for autotools, cmake
- allow override for arbitrary Makefile builds.
- would enable debug flags per package
- Matt: Need to make some default policy decisions about what comes with
+debug
- allow configuration w/reasonable defaults
- Figure out how best to manage source location & storage
- Make more packages support
- Matt: spack packages can be difficult to debug
-
Supporting
+debug
- Mark: is this just about flags or also other package options?
- Matt: other options, too
- many packages have extra features they turn on with, e.g.,
-DDEBUG
- want to allow package author to support these.
- many packages have extra features they turn on with, e.g.,
- Matt: other options, too
- Matt: if we support Windows, +debug flag needs to propagate to all dependencies there.
- Matt:
- To do standard stuff, we need to know whether a package is using autotools or cmake.
- Options for how to implement this:
- Extend a subclass of
Package
, e.g.AutotoolsPackage
- weakness: some packages have 2 builds. need this to be conditional like everything else
- In-package directive, with
when
clauses like other directives
- could function like a mix-in in Ruby (kind of like other directives)
- Extend a subclass of
- Mark: Make sure that
+opt
and+debug
are separate.- Matt: that is the intent, just need to decide default for each.
- Mark: is this just about flags or also other package options?
-
Managing source for debugging.
- Want to automatically save the source somehow after build
- Don't want to leave the object files around
- need to build with source in a way so that DWARF paths are valid after install
- Can build out of
$prefix/.spack
but it's not fast like/tmp
- Ben:
strip
can change the paths used in debug information- may need to build with artificially long paths so you can trim later.
- Can build out of
- Proposal for how to do this right:
- Create longer stage directory path.
- Build & install out of stage.
- Scan DWARF of binaries in prefix for source paths.
- Copy all Referenced source into
$prefix/.spack/src
- Use
strip
to rename paths in the installed binaries