Skip to content

Bundle Packages #1926

@citibeth

Description

@citibeth

@tgamblin @alalazo @adamjstewart

I want to make a package that installs a bunch of other stuff, but doesn't install anything itself. See below for my initial attempt. Unfortunately, this causes an exception:

==> Error: Install failed for env-modele.  Nothing was installed!
==> Error: Installation process had nonzero exit code : 256

Any pointers on how to go about building such packages? My sample is below.

from spack import *


class EnvModele(Package):

    homepage = ""

    version('1.0', 'e2b724dfcc31d735897971db91be89ff')

    variant('python', default=False,
            description='Include basic scientific Python environment')

    # --------- ModelE dependencies (taken from modele/package.py)
    # Build dependencies
    depends_on('m4')
    depends_on('cmake')
    # Link dependencies
    depends_on('mpi')
    depends_on('netcdf-fortran')
    #depends_on('fexception')
    depends_on('everytrace+fortran+mpi')
    depends_on('parallel-netcdf+fortran~cxx')

    # -------- Other things we need
    depends_on('modele-utils')
    depends_on('ncview')
    depends_on('nco')
    depends_on('modele-control')

    # -------- Python post-processing environment
    depends_on('python', when='+python')
    depends_on('py-scipy', when='+python')
    depends_on('py-netcdf', when='+python')
    depends_on('py-basemap', when='+python')

    def url_for_version(self, version):
        return 'https://github.com/citibeth/dummy/tarball/v1.0'

    def install(self, spec, prefix):
        pass

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureA feature is missing in Spack

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions